Many printers, such as laser printers and ink jet printers, commonly receive data in page description language form before starting the printing process. With a page description language (PDL), a page is represented using graphics, text, and images that can be specified to be located anywhere on the page, and in any order, using successive commands of the language. The PDL commands reflect the way the page is composed. However, before printing, the received data must be rasterized so a page print mechanism (“print engine”) in the printer can print the page while moving the print media (e.g, paper) uniformly in one direction, usually top to bottom.
Rasterization is the process of converting data that represent a page or portion of a page into a series of individual dots or pixels across the printed page to form a raster scanline, producing successive scanlines one after another down the page. The complete set of scanlines for a page is the raster data for the page. Rasterization is performed in the page printer by a rasterizer or other processor.
PDL commands for the page are converted to an intermediate representation called an “object display list” prior to rasterization. An object display list is a sequence of objects to be printed along with various print commands. The object display list is a compact representation of the page to be printed.
In many cases, a page to be printed is divided into several strips, such as horizontal strips of data. An object display list is created for each strip, which can be separately rasterized. By so dividing the page, the processing and memory requirements to provide rasterization are reduced. All the information for a particular band is contained in the display list commands for that band.
Strips contain many different types of objects to be printed, such as fonts, vectors, bit maps and others. Each strip is rendered and printed by a print engine. Rendering is normally performed to a resolution that is selected by a user. A user can enter the resolution for a page on a front panel of a printer. Higher resolutions require larger quantities of data to be rendered, which can require more time, storage and disk bandwidth. If a resolution of 1200 dpi is selected, that resolution is used for printing regardless of what is on the page. If an object having a resolution of 150 dpi raster is to be printed, it is scaled up to 1200 dpi and rendered. It is desired to minimize the amount of data that needs to be rendered.